package cyou.breathe.blog.api.article.service;

import cyou.breathe.blog.api.article.model.ArticleVO;
import cyou.breathe.blog.api.article.request.ArticleCreateRequest;
import cyou.breathe.blog.api.article.request.ArticleDeleteRequest;
import cyou.breathe.blog.api.article.request.ArticleQueryRequest;
import cyou.breathe.blog.api.article.request.ArticleUpdateRequest;
import cyou.breathe.blog.api.article.response.ArticleCreateResponse;
import cyou.breathe.blog.api.article.response.ArticleDeleteResponse;
import cyou.breathe.blog.api.article.response.ArticleQueryResponse;
import cyou.breathe.blog.api.article.response.ArticleUpdateResponse;
import cyou.breathe.blog.api.folder.request.ArticleDeleteByFolderIdRequest;
import cyou.breathe.blog.api.folder.response.ArticleDeleteByFolderIdResponse;

import java.util.List;

/**
 * @author: breathe
 * @createTime: 2025-08-30
 */
public interface ArticleFacadeService {

    ArticleCreateResponse createArticle(ArticleCreateRequest articleCreateRequest);

    ArticleUpdateResponse updateArticle(ArticleUpdateRequest articleUpdateRequest);

    ArticleDeleteResponse deleteArticle(ArticleDeleteRequest articleDeleteRequest);

    ArticleQueryResponse queryArticles(ArticleQueryRequest articleQueryRequest);

    ArticleDeleteByFolderIdResponse deleteArticleByFolderId(ArticleDeleteByFolderIdRequest articleDeleteByFolderIdRequest);
}
